Data stored on a data storage device is accessed by I/O commands. These commands are used for reading data stored on a storage device and writing data to a storage device. If I/O commands are issued randomly to a zone within a storage device, each I/O response time forms a line when plotted against the size of data being read.
The response time is made up of transfer time, which is the I/O size multiplied by the constant transfer rate, and other components that do not depend on I/O size. The other components include rotational latency, seek time and wait time. On a data storage disk, rotational latency time taken by the disk platter to spin until the data is under the disk head and the read or write command can proceed. Seek time is the time taken when the disk head is moving radially to the track on which the data begins. Wait time is the time for other I/O commands to complete during which the operating system or storage device is waiting. The transfer time is the time between the disk head reaching the first block of data and reading the last block of data. This is the time it takes the disk head to physically read data off the storage device. The transfer rate is constant for most I/O sizes so transfer time increases linearly with the amount of data to be transferred. The transfer rate might not be constant for extremely large I/Os of several gigabytes or larger. If an I/O is so large that it spans two or more physical disk zones, the transfer rate may change when the disk head enters a new disk zone.
The response time is=to the rotational latency+the seek time+the wait time+(the I/O size/the data transfer rate). This is equal to a constant+(1/the transfer rate)×the I/O size. Thus the response time forms the straight line of the form y=ax+b where the slope is (1/the transfer time) and the y intercept is the sum of rotational latency, seek time and wait time.
Statistical techniques to measure the y-intercept and slope from a data set include linear regression and exponential smoothing. Linear regression can be used to estimate the y-intercept and slope from the static data set. Using linear regression each time a new measurement arrives the linear regression must be re-run on the entire data set to update the result. This technique is too computationally expensive for practical use on a data set where new measurements are constantly provided.
Exponential smoothing can estimate the value of a single parameter changing in time from a stream of noisy measurements of that variable. Exponential smoothing is essentially an average that weights recent measurements more heavily than older measurements. An estimate is adjusted towards each new measurement. A configurable step size α controls the size of the adjustment according to the equation.ki=αxi+(1−α)ki−1 
The disadvantage of exponential smoothing is that it can only operate on the single parameter.